1. Field of the Invention
The present invention relates generally to computer systems. More particularly, the present invention relates to systems for processing of computer data.
2. Background Art
When transferring data over networks, data generally travels point to point, from a single source to a single destination, unless specially configured otherwise. However, there are often situations where multiple interested data consumers need to receive the same data for other purposes. For example, if the server of a game company is collecting data about users from online game servers, multiple internal departments at the game company may need access to such data. Website administrators may need that data to update high scores and leader boards. The marketing department may need that data to pinpoint areas of growth. The programming and engineering department may need that data for debugging purposes.
If multiple data destinations are required, some amount of manual configuration is often necessary for proper data routing. Typically this entails a custom coded application at the source and destination ends, specialized proxies that are configured to correctly route the data feeds to the intended multiple destinations, or a periodic scan for data in a centralized data store such as a database. However, there are a number of problems with each approach. The custom coded application approach requires reprogramming and redeployment when a change in routing requirements occurs, requiring staff resources and possibly leading to downtime, which may be unacceptable for certain situations. Similarly, specialized proxies must be correctly configured and reconfigured when data routing requirements change. A periodic scan approach is problematic in that it is periodic, leading to outdated data. For example, situations where data must be received in near real-time, such as streaming live video content, for example, will not be amenable to a periodic scan approach.
Accordingly, there is a need to overcome the drawbacks and deficiencies in the art by providing a system to flexibly route data to multiple destinations, without requiring disruptive downtime or burdensome maintenance.